// 用户相关接口

import { request } from '@/utils/request.js'
// import store from '@/store' // 引入store状态管理器

/* 用户登录
 * @params mobile 手机号
 * @params code 验证码
*/
export const login = data => request({
  method: 'post',
  url: '/v1_0/authorizations',
  data
})

/*
* 发送验证
* @params mobile 手机号
*/
export const getSms = mobile => request({
  method: 'get',
  url: `/v1_0/sms/codes/${mobile}`
})

/*
 * 获取用户本人信息
 */
export const getUserInfo = () => request({
  method: 'get',
  url: '/v1_0/user'
  // headers: { // 请求拦截器中封装了headers
  //   // token的数据格式注意:Bearer+空格+token
  //   Authorization: `Bearer ${store.state.user.token}`
  // }
})

/*
 * 获取用户频道列表
 */
export const getUserChannels = () => request({
  method: 'get',
  url: 'v1_0/user/channels'
})

/*
 * 关注用户
* @params  target 用户id
 */
export const addFollow = query => request({
  method: 'post',
  url: '/v1_0/user/followings',
  data: {
    target: query
  }
})

/**
 * 取消关注用户
 * @params  target 用户id
 */
export const deleteFollow = target => {
  return request({
    method: 'delete',
    url: `/v1_0/user/followings/${target}`
  })
}

/**
 * 获取当前登录用户的个人资料 - 后端直接通过token来解析用户, 不需要传参
 */
export const getUserProfile = () => {
  return request({
    method: 'GET',
    url: '/v1_0/user/profile'
  })
}

/**
 * 更新用户资料
 * @params name 昵称
 * @params photo 头像 base64编码处理
 * @params gender 性别，0-男，1-女
 * @params birthday 生日，格式'2018-12-20'
 */
export const updateUserProfile = data => request({
  method: 'patch',
  url: '/v1_0/user/profile',
  data
})

/**
 * 更新用户照片资料
 * @params photo 头像图片文件
 */
export const updateUserPhoto = data => {
  return request({
    method: 'PATCH',
    url: '/v1_0/user/photo',
    data
  })
}
